package com.tudouji.project.bill.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.tudouji.framework.aspectj.lang.annotation.Excel;
import com.tudouji.framework.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 生产报对象 producereport
 * 
 * @author tudouji
 * @date 2021-03-01
 */
public class Producereport
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 领料单编号 */
    @Excel(name = "领料单编号")
    private String plcode;

    /** 领料单状态 */
    @Excel(name = "领料单状态")
    private Long plstatus;

    /** 领料单时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "领料单时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pldate;

    /** 组织名称 */
    @Excel(name = "组织名称")
    private String orgname;

    /** 组织ID */
    @Excel(name = "组织ID")
    private String orgguid;

    /** 总入库 */
    @Excel(name = "总入库")
    private BigDecimal inweight;

    /** 总出库 */
    @Excel(name = "总出库")
    private BigDecimal outweight;

    @Excel(name = "退料重量")
    private BigDecimal backweight;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date starttime;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endtime;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date creattime;

    /** 部门ID */
    @Excel(name = "部门ID")
    private String departid;

    /** 部门名称 */
    @Excel(name = "部门名称")
    private String departname;

    /** 库房ID */
    @Excel(name = "库房ID")
    private String srguid;

    /** 库房名称 */
    @Excel(name = "库房名称")
    private String srname;

    /** 库房名称 */
    @Excel(name = "生产计划ID")
    private String planguid;

    private List<Producereportitem> producereportitemList;

    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:dd")
    private Date orderdate;

    public String getPlanguid() {
        return planguid;
    }

    public void setPlanguid(String planguid) {
        this.planguid = planguid;
    }
    private String conditions;

    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:dd")
    private Date beginCreatedate;

    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:dd")
    private Date endCreatedate;

    private String operatorid;

    private Integer intype;

    public Date getOrderdate() {
        return orderdate;
    }

    public void setOrderdate(Date orderdate) {
        this.orderdate = orderdate;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setPlcode(String plcode) 
    {
        this.plcode = plcode;
    }

    public String getPlcode() 
    {
        return plcode;
    }
    public void setPlstatus(Long plstatus) 
    {
        this.plstatus = plstatus;
    }

    public Long getPlstatus() 
    {
        return plstatus;
    }
    public void setPldate(Date pldate) 
    {
        this.pldate = pldate;
    }

    public Date getPldate() 
    {
        return pldate;
    }
    public void setOrgname(String orgname) 
    {
        this.orgname = orgname;
    }

    public String getOrgname() 
    {
        return orgname;
    }
    public void setOrgguid(String orgguid) 
    {
        this.orgguid = orgguid;
    }

    public String getOrgguid() 
    {
        return orgguid;
    }
    public void setInweight(BigDecimal inweight) 
    {
        this.inweight = inweight;
    }

    public BigDecimal getInweight() 
    {
        return inweight;
    }
    public void setOutweight(BigDecimal outweight) 
    {
        this.outweight = outweight;
    }

    public BigDecimal getOutweight() 
    {
        return outweight;
    }
    public void setStarttime(Date starttime) 
    {
        this.starttime = starttime;
    }

    public Date getStarttime() 
    {
        return starttime;
    }
    public void setEndtime(Date endtime) 
    {
        this.endtime = endtime;
    }

    public Date getEndtime() 
    {
        return endtime;
    }
    public void setCreattime(Date creattime) 
    {
        this.creattime = creattime;
    }

    public Date getCreattime() 
    {
        return creattime;
    }
    public void setDepartid(String departid) 
    {
        this.departid = departid;
    }

    public String getDepartid() 
    {
        return departid;
    }
    public void setDepartname(String departname) 
    {
        this.departname = departname;
    }

    public String getDepartname() 
    {
        return departname;
    }
    public void setSrguid(String srguid) 
    {
        this.srguid = srguid;
    }

    public String getSrguid() 
    {
        return srguid;
    }
    public void setSrname(String srname) 
    {
        this.srname = srname;
    }

    public String getSrname() 
    {
        return srname;
    }

    public List<Producereportitem> getProducereportitemList() {
        return producereportitemList;
    }

    public void setProducereportitemList(List<Producereportitem> producereportitemList) {
        this.producereportitemList = producereportitemList;
    }

    public String getConditions() {
        return conditions;
    }

    public void setConditions(String conditions) {
        this.conditions = conditions;
    }

    public Date getBeginCreatedate() {
        return beginCreatedate;
    }

    public void setBeginCreatedate(Date beginCreatedate) {
        this.beginCreatedate = beginCreatedate;
    }

    public Date getEndCreatedate() {
        return endCreatedate;
    }

    public void setEndCreatedate(Date endCreatedate) {
        this.endCreatedate = endCreatedate;
    }

    public String getOperatorid() {
        return operatorid;
    }

    public void setOperatorid(String operatorid) {
        this.operatorid = operatorid;
    }

    public Integer getIntype() {
        return intype;
    }

    public void setIntype(Integer intype) {
        this.intype = intype;
    }

    public BigDecimal getBackweight() {
        return backweight;
    }

    public void setBackweight(BigDecimal backweight) {
        this.backweight = backweight;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("plcode", getPlcode())
            .append("plstatus", getPlstatus())
            .append("pldate", getPldate())
            .append("orgname", getOrgname())
            .append("orgguid", getOrgguid())
            .append("inweight", getInweight())
            .append("outweight", getOutweight())
            .append("starttime", getStarttime())
            .append("endtime", getEndtime())
            .append("creattime", getCreattime())
            .append("departid", getDepartid())
            .append("departname", getDepartname())
            .append("srguid", getSrguid())
            .append("srname", getSrname())
            .toString();
    }
}
